#region Imports

using System;

#endregion

namespace Backend.Domain
{

    /// <summary>
    /// Represents a field in a view.
    /// </summary>
    [Serializable]
    public sealed class Field
    {

        #region Properties - Instance Member

        #region Properties - Instance Member - Field Members

        /// <summary>
        /// Gets or sets the identifier of the field.
        /// </summary>
        /// <value>
        /// The identifier of the field.
        /// </value>
        public Guid Id
        {
            get;
            set;
        }

        /// <summary>
        /// Gets or sets the name of the field.
        /// </summary>
        /// <value>
        /// The name of the field.
        /// </value>
        public string Name
        {
            get;
            set;
        }

        /// <summary>
        /// Gets or sets the display name of the field.
        /// </summary>
        /// <value>
        /// The display name of the field.
        /// </value>
        public string DisplayName
        {
            get;
            set;
        }

        /// <summary>
        /// Gets or sets the description of the field.
        /// </summary>
        /// <value>
        /// The description of the field.
        /// </value>
        public string Description
        {
            get;
            set;
        }

        /// <summary>
        /// Gets or sets the data specification of the field.
        /// </summary>
        /// <value>
        /// The data specification of the field.
        /// </value>
        public string DataSpecification
        {
            get;
            set;
        }

        /// <summary>
        /// Gets or sets a value indicating whether the field is hidden.
        /// </summary>
        /// <value>
        /// <c>true</c> if the field is hidden; 
        /// otherwise, <c>false</c>.
        /// </value>
        public bool IsHidden
        {
            get;
            set;
        }

        #endregion

        #endregion

    }

}
